home *** CD-ROM | disk | FTP | other *** search
/ Shareware Overload Trio 2 / Shareware Overload Trio Volume 2 (Chestnut CD-ROM).ISO / dir31 / vtsrc12b.zip / LIB / DEVSB.ASM < prev    next >
Assembly Source File  |  1993-01-21  |  2KB  |  94 lines

  1.                 INCLUDE SoundDevices.INC
  2.  
  3.  
  4. EXTRN DSPWritePort : WORD
  5. EXTRN SbSplTimeout : WORD
  6. EXTRN SbCmdTimeout : WORD
  7.  
  8.  
  9. MACRO  SBLoop Tout
  10. LOCAL @@tst, @@cnt
  11.  
  12.                 MOV     DX,[DSPWritePort]
  13.                 MOV     BX,Tout
  14. @@tst:
  15.                  DEC    BX
  16.                  JZ     @@cnt
  17.                  IN     AL,DX
  18.                  TEST   AL,80h
  19.                  JNZ    @@tst
  20. @@cnt:
  21.  
  22. ENDM  SBLoop
  23.  
  24.  
  25.                 CODESEG
  26.  
  27. PUBLIC SBIntHandler
  28.  
  29. SBIntHandler:
  30.                 Chunk1
  31.  
  32.                 Chunk21
  33.  
  34.                 Chunk221
  35.  
  36.                 SBLoop  [SbCmdTimeout]
  37.                 MOV     AL,10h
  38.                 OUT     DX,AL
  39.  
  40.                 Chunk222
  41.  
  42.                 MonoChunk31
  43.  
  44.                 Chunk41
  45.  
  46.                 SBLoop  [SbSplTimeout]
  47.                 MOV     AL,CL
  48.                 OUT     DX,AL
  49.  
  50.                 Chunk5
  51.  
  52. PUBLIC DMASBIntHandler
  53. PUBLIC DMASBTimHandler
  54.  
  55. DMASBIntHandler:
  56.                 Chunk1
  57.  
  58.                 SBLoop  [SbCmdTimeout]
  59.                 MOV     AL,10h
  60.                 OUT     DX,AL
  61.  
  62.                 Chunk2
  63.  
  64.                 MonoChunk31
  65.  
  66.                 Chunk41 8
  67.  
  68.                 SBLoop  [SbSplTimeout]
  69.                 MOV     AL,CL
  70.                 OUT     DX,AL
  71.  
  72.                 Chunk51
  73.  
  74. DMASBTimHandler:
  75.                 Chunk1
  76.  
  77.                 SBLoop  [SbCmdTimeout]
  78.                 MOV     AL,10h
  79.                 OUT     DX,AL
  80.  
  81.                 Chunk2
  82.  
  83.                 MonoChunk31
  84.  
  85.                 Chunk41 8
  86.  
  87.                 SBLoop  [SbSplTimeout]
  88.                 MOV     AL,CL
  89.                 OUT     DX,AL
  90.  
  91.                 Chunk51
  92.  
  93. END
  94.